In a packet-switched network (such as an Internet protocol [IP]-based network) each data destination and data source has a uniquely identifiable address. These are referred to as IP hosts. In the case of IP networks, the Internet Assigned Numbers Authority (IANA) receives requests to assign blocks of IP addresses for public IP addresses. Organizations that receive these blocks of IP addresses from IANA are then free to assign these addresses to any IP host that they control as they see fit. IANA is not concerned about the allocation of IP addresses in private IP networks: i.e. those networks that have IP addresses that start with 10. (i.e. 10/8 IP address space) are examples of this as discussed below. As a result of limited address space, even in private IP address domains, a single IP address domain is not able to handle all the IP hosts required to provide telephony services to scale to the size of networks required by new VoIP telephony operators.
A new version of the Internal protocol (IPv6) is presently being defined which will have a much larger address space than the present IPv4 specification. However, even when this standard is finally released, it will be necessary to replace or update all the components forming part of a network to take full advantage of the increase in address space. Thus, presently, IPv6 cannot be readily used to overcome IP address scarcity.
In the mid 1990s, the IANA recognised that IP addresses would eventually run out and accordingly reserved three contiguous blocks of private addresses commonly referred to as the 10/8,172.16/12 and 192.168/16 address blocks. The largest of these blocks (the 10/8 block) provides approximately 16 million unique IP addresses. Thus with appropriate (and well known) routing techniques, it is possible to have a private network (private in the sense that it does not have publicly addressable/Internet addressable IP addresses for all network nodes) may be constructed having up to 16 million unique nodes. Data required to be routed outside the network may then only need to use a relatively small number of unique public IP addresses, In this way, devices not needing public access (RFC 1918 provides the example of an airport departure lounge having IP addressable status indicator boards in which the status indicator boards do not need to be uniquely addressable from outside the airport lounge) may be constructed without using the scarce public IP address resource.
In order to allow communication using the IP addresses between public and private networks, a technique called network address translation (NAT) has been developed. In its most sophisticated form, this typically provides a gateway router at the boundary of the private network which dynamically assigns mappings between a port on a public IP address and a port on the IP address of a private network node within the private network. Thus for example, if the private network has a web browser, typically the web browser will issue a request on port 80 of its private IP address which may then be mapped within the NAT router to any port (let us say 5000 for the sake of this example) on the public IP address of the NAT router. The NAT router then forwards the request to the web server having replaced the private IP address at port 80 with the NAT router's public IP address at port 5000. When the data is returned by the web server to port 5000 of the NAT router, the NAT router alters the IP headers to replace the NAT routers public IP address at port 5000 with the originating private IP address at port 80. Thus the browser on the private terminal simply sees data being returned to it on port 80 and does not see any of the address and port translation adjustments carried out by the NAT router.
As explained below in detail, NAT routing works for many applications. However, as is well understood in the prior art, NAT routing of this type is not possible for protocols such as session initiation protocol (SIP), H.248, MGCP or H.323 which are used for multi-media transmissions and in particular for voice over IP (VoIP) transmissions. There are several reasons for this but the most common problem results from the need for these protocols to carry IP address information within the IP packet payload. Thus changes made by the NAT router to the IP header do not correctly readdress the packet since addressing information is also contained in the payload of the packet. Furthermore, dynamic binding of private and public addresses and ports and port ranges as often carried out NAT routers, may result in port mappings being “expired” while a media session is in progress. If this occurs, the connection will be lost since at least some of the terminals in the session will no longer be able to address other terminals in the session, Although some NAT routers provide static bindings to overcome this problem, this is not readily scalable.
Thus it is well understood in the art that NAT routing is unsuitable for use with applications requiring a media session exchange and signalling exchange, such as VOIP connections.
Therefore, VoIP connections presently need to be made over networks having unique IP addresses for all nodes. Thus connections may readily be made over the Internet (which by definition has unique IP addresses for all nodes considered to be a part of the public internet) or over private networks which do not have duplicate addresses and occasionally between private and public networks using dedicated media gateway translators at the network edges which requires an undesirable conversion between VoIP and VoTDM since the inter-network traffic is carried on traditional time-division multiplex (TDM) trunks. However, as noted above, the largest private address space provides approximately 16 million unique IP addresses. In a typical present day cable telephony provision, each household requires typically four IP addresses. For example, a household provisioned according to the “packetcable” standard will have two IP addresses assigned to the modem terminal adaptor (media gateway); namely one for the media gateway and the other for a cable modem, one IP address assigned to a set top box and at least one IP address assigned to a personal computer. Thus taking present day real figures, it is reasonable to assume that a cable operators region has eight million households “passed” by its cable service. Assuming that the cable service has a 25% penetration rate, that means that two million homes will have cable provision which will use four million IP addresses. Thus the largest private address range (the 10/8 range) can only supply enough IP addresses for two regions of the cable operator.
Therefore, if the cable operator wishes to provide telephony services over its IP network, it must be able to reuse the private block address space unless it has a very low number of subscribers. This will therefore generate duplicate addresses and will prevent VoIP calls being routed correctly since an originating terminal will not be able to have its call routed correctly since it will not be possible to determine which of the plurality of destination terminals is the correct destination terminal. As a result, VoIP calls will not be able to work between regions, and the operator will need to have VoIP to TDM gateways on the edge of this domain, and then have TDM trunks between the region. This adds extra costs to the deployment, and also has an adverse affect on the voice quality due to more conversions between VoIP and VoTDM.